/* 
 * File:   Movable.h
 * Author: fabienlenoir
 *
 * Created on September 5, 2009, 1:31 AM
 */

#ifndef _MOVABLE_H
#define	_MOVABLE_H

#include <iostream>
#include "View.h"
//#include "Tile.h"
#include "MapObject.h"

//class MapObject;
class Tile;

class Movable : public MapObject{
public:
    Movable();
    Movable(const Movable& orig);

    virtual void paint(View* v) = 0;

    virtual void moveRight();
    virtual void moveUp();
    virtual void moveDown();
    virtual void moveLeft();

    virtual ~Movable();
    typedef enum { DOWN, LEFT, UP, RIGHT } MOVABLE_FACING;

protected:
    MOVABLE_FACING _facing;
private:
    
    

};

#endif	/* _MOVABLE_H */

